import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

const store = new Vuex.Store({
    // 全局数据
    state: {
      num: 5,
      loginParam: []
    },
    // 监听最新值
    getters: {
      // test
      getNum(state) {
        return state.num
      },
      // 取值
      getLoginParam(state) {
        return JSON.parse(state.loginParam)
      }
    },
    // 相当于methonds  唯一修改states  同步方法
    mutations: {
      add1(state, payload) {
        state.num += payload
      },
      setLoginParam(state, payload) {
        state.loginParam = JSON.stringify(payload)
      }

    },
    // 异步
    actions: {
      asyncUpdateLoginParams(context, val) {
        context.commit('setLoginParam', val)
      }
    },
    modules: {},
  }
)
export default store;
